package top.yueyazhui.dds.annotation;

import top.yueyazhui.dds.datasource.DataSourceType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 这个注解将来可以加在某一个 service 类上或 service 类的方法上，通过 value 属性来指定类或方法应该使用哪个数据源
 */
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface DataSource {

    /**
     * 如果一个方法上加了 @DataSource 注解，但是却没有指定数据源名称，那么默认使用默认的数据源名称
     * @return
     */
    String value() default DataSourceType.DEFAULT_DATA_SOURCE_NAME;
}
